package logger

import "context"

var _logger Logger

func Init(level LogLevel, opts ...Options) {
	var err error
	if len(opts) == 0 {
		opts = make([]Options, 0)
	}
	opts = append(opts, LogsCustomSkipLevel(2))
	_logger, err = New(level, opts...)
	if err != nil {
		panic(err)
	}
}

func Debug(ctx context.Context, v string, msg ...any) {
	_logger.Debug(ctx, v, msg...)
}

func Info(ctx context.Context, v string, msg ...any) {
	_logger.Info(ctx, v, msg...)
}

func Warn(ctx context.Context, v string, msg ...any) {
	_logger.Warn(ctx, v, msg...)
}

func Error(ctx context.Context, v string, msg ...any) {
	_logger.Error(ctx, v, msg...)
}

func Panic(ctx context.Context, v string, msg ...any) {
	_logger.Panic(ctx, v, msg...)
}
